package br.com.edumobi.dados;

import java.util.List;

import br.com.edumobi.dados.modelos.Alternativa;
import br.com.edumobi.dados.modelos.Classificacao;
import br.com.edumobi.dados.modelos.Questao;
import br.com.edumobi.dados.modelos.Simulado;

public interface IDadosLocal {

    void inserirClassificacao(Classificacao classificacao);

    void alterarClassificacao(Classificacao classificacao);

    void removerClassificacao(Classificacao classificacao);

    Classificacao consultarClassificacaoPorId(Long id);

    List<Classificacao> consultarClassificacoes();

    List<Classificacao> consultarClassificacoesPorClassificacaoSuperior(Classificacao classificacaoSuperior);

    void inserirQuestao(Questao questao, Classificacao classificacao);

    void alterarQuestao(Questao questao, Classificacao classificacao);

    void removerQuestao(Questao questao);

    Questao consultarQuestaoPorId(Long id);

    List<Questao> consultarQuestoes();

    List<Questao> consultarQuestoesPorClassificacao(Classificacao classificacao);

    void inserirAlternativa(Alternativa alternativa, Questao questao);

    void alterarAlternativa(Alternativa alternativa, Questao questao);

    void removerAlternativa(Alternativa alternativa);

    Alternativa consultarAlternativaPorId(Long id);

    List<Alternativa> consultarAlternativas();

    List<Alternativa> consultarAlternativaPorQuestao(Questao questao);

    void inserirSimulado(Simulado simulado);

    void alterarSimulado(Simulado simulado);

    void removerSimulado(Simulado simulado);

    Simulado consultarSimuladoPorId(Long id);

    List<Simulado> consultarSimuladosPorClassificacao(Classificacao classificacao);
}
